package corelayer;

/**
 * 実際にノードを操作するアルゴリズムを実装するためのインターフェイスです
 */
public interface INodeController {

    /**
     * 一定間隔で実行され、ノードを操作します
     * @param node 操作するノード
     */
    void interval(INode node);

    /**
     * あるノードとすれ違う時に呼ばれます。
     * @param self 自分のノード
     */
    void onReceived(INode self, IPacket packet);
}
